package com.java.zhuiyun.api.achievement.service;

import com.java.zhuiyun.api.achievement.entity.Achievement;
import com.java.zhuiyun.common.response.CommonResult;
import com.java.zhuiyun.util.pageUtil.PageRequest;
import com.java.zhuiyun.util.pageUtil.PageResult;
import org.springframework.web.multipart.MultipartFile;

public interface AchievementService {
    /**
    * @Author MJL
    * @Description todo 成就信息添加
    * @Date 2023/9/13 9:33
    * @Return  * @param null
    */
    CommonResult addAchievement(Achievement achievement, MultipartFile file);
    /**
    * @Author MJL
    * @Description todo 查看全部成就信息
    * @Date 2023/9/13 10:59
    * @Return  * @param null
    */
    PageResult queryAchievement(Achievement achievement, PageRequest pageRequest);
    /**
    * @Author MJL
    * @Description todo 修改成就信息
    * @Date 2023/9/13 11:16
    * @Return  * @param null
    */
    CommonResult updateAchievement(Achievement achievement, MultipartFile file);
    /**
    * @Author MJL
    * @Description todo 删除单个成就
    * @Date 2023/9/13 14:24
    * @Return  * @param null
    */
    CommonResult deleteAchievement(Integer id);
    /**
    * @Author MJL
    * @Description todo 将成就下架
    * @Date 2023/9/13 14:35
    * @Return  * @param null
    */
    CommonResult bannedAchievement(Integer id);
    /**
    * @Author MJL
    * @Description todo 将成就上架
    * @Date 2023/9/13 14:41
    * @Return  * @param null
    */
    CommonResult enableAchievement(Integer id);

    CommonResult getByIdIdiom(Integer id);

    /*
     * @Author WX
     * @Description 查询可用成就信息
     * @Date 2023/10/16 8:52
     * @Return
     * @param null
     */
    CommonResult selectAvailableAchievement();
}
